64

Учебный python-проект student на gitlab с тестами, часть 1

Периодически приходится объяснять одни и те же детали работы с python в gitlab. Решил записать видео-версию, чтобы покрыть часто возникающие вопросы.


Часовое видео включает в себя полноценную работу в консоли и редакторе vim.  Раскрыты следующие аспекты:

1. создание проекта в gitlab

2. консольную работу в git (git status / add / commit / diff / push), в том числе удобные alias для ускорения работы

3. pylint, в том числе выключение некоторых диагностик в тестах

4. создание небольшого проекта на python, в том числе

— база типа запуска hello world, if name == main, f-строк

— три варианта запуска скрипта

— чтение из CSV файла с разделителем "точка с запятой" ФИО и логины

— обработка исключений, в том числе re-raise

— google docstring

— requirements.txt и pip freeze

— проверка наличие логинов на gitlab.com

— разница mv и git mv

— правильная структура проекта

— постоянное использование tab, ctrl+R и прочих практик ускорения работы

— колёсико мышки для вставки буфера выделения

5. создание тестов к проекту с помощью pytest и фикстуры-файла


Код на gitlab. Мой bash конфиг.

В телеграм-канале разбираем разные нюансы из жизни разработчика на Python и не только — python, bash, linux, тесты, командную разработку. Есть разборы фрагментов кода, где в нескольких постах описывается превращение кода "как попало" в хороший. Есть обзоры тенденций (например, выдержки из stackoverflow survey или обзор тенденций систем контроля версий на рынке). Популярен пост как разработчику исследовать предметную область, чтобы не велосипедить и пользоваться топовыми научными достижениями.


На ютуб-канале вы ещё можете посмотреть видео про атаку forkbomb в docker или идеальный скрипт на bash.

Правила сообщества

Публиковать могут пользователи с любым рейтингом. Однако!


Приветствуется:

• уважение к читателям и авторам

• конструктивность комментариев

• простота и информативность повествования

• тег python2 или python3, если актуально

• код публиковать в виде цитаты, либо ссылкой на специализированный сайт


Не рекомендуется:

• допускать оскорбления и провокации

• распространять вредоносное ПО

• просить решить вашу полноценную задачу за вас

• нарушать правила Пикабу

Автор поста оценил этот комментарий

А что натурально нынче разрабы не читают Кнута а пялятся в какашечное видео? И потом все запоминают?... ну офигеть.

раскрыть ветку (1)
5
Автор поста оценил этот комментарий

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

Алгоритм - это обычно меньше 1% от кодовой базы проекта

показать ответы
Автор поста оценил этот комментарий

Ща пробило на хихи. Ни скопировать ни сохранить ни переслать нужные три строчки.



Ну и что вы в час видео уложит 500 странц текста тут просто порвало.

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Так код на gitlab, копируй что хочешь. На видео показан процесс, который по-другому и не показать.


У новичков часто возникают достаточно простые вопросы, но на которые найти ответ не очень легко. Недавно помогал абитуриенту запустить отладчик для Си. На винде раз - и буферизированный вывод, когда результат putchar при пошаговой отладке не показывается. Вот как новичку в программировании нагуглить решение setbuf(stdout, 0);


Для этого надо понимать, что гипотетически может сломаться

показать ответы
Автор поста оценил этот комментарий

Видео не может учить думать. Видео только для накрутки лайков.

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Эм. Это самый быстрый способ показать кучу нюансов вместе. Если я отправлю свежего программиста к книге Pro Git в 500 страниц, двухтомнику Лутца по питону (800 и 700 страниц), шлифану Лучано на 700 страниц, потом Танненбаума Современные операционные системы на 1100 - то до реализации чего-то полезного дойдёт примерно никто.


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

показать ответы
Автор поста оценил этот комментарий

Я из того поколения кому запихали и Войну и мир и Преступление и наказание и Краткую историю ВКП(б).


Но есть небольшая проблема. Учебники по архитектуре CPU и программированию на C внезапно пишутся на английском. Хотя... я изучал переведенные мануалы DEC по VAX/VMS. Какая же прекрасная была архитектура, мы ее не смогли повесить даже бесконечным циклом на ассемблере. Терминал где мы это запустили конечно сдох, но все остальные продолжали работать.


p.s. нуидаконечно, русскуюязыкуневладею. А вы можете стараться троллить того кто писал на ассемблере для PDP-11 когда вас еще и в проекте не было.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Грамотная речь = вежливость к собеседнику. В коде я негативно отношусь к опечаткам в названиях переменных и даже комментариях. Для меня это показатель небрежности

показать ответы
3
Автор поста оценил этот комментарий

Поздравляю с первым постом :)


Дружеский совет на будущее: когда в комментариях видите очередное "фе, все вокруг тупые, а тут вообще какое-то говно", то прежде, чем тратить время и нервы на ответ, просто открывайте профиль.


С вероятностью 99% вы увидите там вот такую картину и поймёте, что нет смысла вступать в диалог, так как он изначально затевался с целью самоутвердиться в интернете и устроить срач.

Иллюстрация к комментарию
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо :)


Товарищ начал грубо, но с зерном правды - видео и правда медленный формат для обучения. Я слушал и аргументированно излагал свою точку зрения. Но дальше полились оскорбления, тут я просто перестал поддерживать диалог


Нервов не тратил. Преподавание закалило, могу одно и то же многократно повторять

Автор поста оценил этот комментарий

Ага. А с ваших подходм у нас мильон кодеров, которые генерят столько ошибок, что к ним надо приставить еще мильон тестировщиков. Я этих устриц прямо сейчас ем, все клевые воздушные вовлеченные один agile кругом но ни одного релиза без ошибок нет.


Может что то все-таки в консерватори  поправить?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Если человек не тянет на junior developer, то не бери его на работу - кто мешает?


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

показать ответы
Автор поста оценил этот комментарий

Кароче. Я на работу не беру тех кто не умеет читать и писать. А вы можете лошков разводить сколько угодно. Они не мои работники.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Берём на входе 1000 студентов. Бросаем им книг на 5000 страниц. На выходе 10 программистов. Круто? Норм, но можно лучше.


Теперь даём им ещё длинные профильные статьи. Теперь на выходе 15 программистов с той же входной тысячи. И так дальше идём. Чем больше материалов хороших и разных, тем у большего числа людей есть возможность повысить квалификацию.


Видео не замена книгам. Это ситуационная альтернатива. Какие-то темы проще показать на видео. Кому-то объяснения голосом понятнее.


Можем, конечно, только берестой пользоваться.

показать ответы
Автор поста оценил этот комментарий

Не погодите. Негатив отдельно, знание языка отдельно. Есть вопросы по знанию языка?


p.s. а по вашему видео -- это пустые труды, нормальных программистов так не научите. Но да, секту адептов соберете (ток плотить оне не будут, таких видео как блох на бобике), возможно удачно продадите себя хрюшам большого какого нить банка.


p.s. и да, видео никакой практической ценности не имеет. Потому и какашечное. Кстати где тут ошибки в русском языке?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Я не отношусь к граммар-наци и не наезжал на язык. Если интересно, у вас недостаточно запятых, плюс мелочи вроде  "ток", "плотить", "какого нить".


Какая секта адептов? Кому платить? А вот про видео интересно. Сможете дать 5 ссылок на хорошие видео, которые покрывают показанное? Это база, да, но собранная в достаточно сжатом виде

показать ответы
0
Автор поста оценил этот комментарий

Чтобы понять что человек не тянет на junior, с ним надо поработать. А так оно приходит и заявляет, я посмотрел 20+ часов видео и крут, плотите мне 150 тр чистыми. И что с ними делать? не смотреть же какашечное видео по списку, конспектировать каждую чтрочку а потом проверять знание

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

С наймом непросто, да. Однозначного подхода я не знаю. Но по обсуждению кода почти всегда можно понять, понимает ли человек, что происходит и в состоянии ли он его изменить

Автор поста оценил этот комментарий

Тут явно наезд не по месту, ться и тся я знаю хотя и трояк по русскому (сочинения было совсем не мое, там со слезами ставили 3 потому что по физике и математике были твердые 5++++) а то что вы путаете очепятки на кривой клаве с неграмотностью пусть останется на вашей совести.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Позвольте я соберу цитат из ваших сообщений

какашечное видео
можете лошков разводить
учите своих лошков ой студентов
только говнокод
Зачем столько негатива? Вам не нравится видео-формат, я понял. Кому-то этот формат нравится. Вы пытаетесь навязать свою точку зрения? А зачем?


Я предлагаю один из возможных вариантов материала. Буду рад, если это кому-то поможет. Если не поможет, то люди путём высказывания негатива и минусования покажут мне ненужность этого материала

показать ответы
5
DELETED
Автор поста оценил этот комментарий

6. выход из vim

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

haha, classic

у vim два режима - бибикать и всё портить

Автор поста оценил этот комментарий

А вот Turbo Pascal 5.5 прекрасно с этим справился.СМ-3 и 4 вспоминать не будем, мир праху их.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Тоже учился на Turbo Pascal, версию не припомню. С него очень круто было начинать


Сейчас грустно, когда люди начинают на Python. Я всегда рекомендую начинать с Си по книжке Kernighan&Ritchie, но это путь не для слабых духом. Студенты способны потратить на эту книгу достаточно времени и сил, а вот люди постарше нет

показать ответы
Автор поста оценил этот комментарий

Кнут учит думат. Глядя на код и журналы sonarcube что нам генерят наши "разработчики" уволить хочется сразу всех.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Много что учит думать, даже моё видео :)


Кажется, что средний уровень разработчика с годами падает, так как порог входа снижается. Но потребность в разработчиках всё равно больше предложения. Распространим же знания

показать ответы