Есть нюансы с "непонятными коммитами". Например, у меня могут как из пулемёта лететь коммиты с комментом "Bugfix" или "Debug". А всё дело в том, что мой код компилируется (я использую Cython), а его компиляция и последующее тестирование происходит на отдельном сервере под управлением GitLab, Docker и Jenkins с целью обеспечения CI. И тогда все изменения приходится документировать в описании merge request гитлаба. Такие вот дела.
@@m0Ray79 Ну тут проблема в том, что если вам нужно будет откатиться назад, вы не сможете понять где именно лежит нужный вам функционал, из всех коммитов с комментариями "bugfix"
@@zproger Конечно, на уровне git (который я и так презираю), откатиться не получится. Он переусложнён, но притом примитивен до полной неюзабельности. Зато я cмогу откатиться на уровне Merge Request в GitLab.
Посмотрел почти 14 минут воды. Какой смысл рассказывать про плагины и НЕ показывать их в работе? Тоже самое с фишками, о которых вы говорите: зачем нужен видеоряд с кодом, если работы с ним никакой не происходит? Про гит вообще молчу. Видео называется 10 УЖАСНЫХ ОШИБОК, а тут одна из них - рассказ про гит :))
Я один учил pep8 по ошибкам от pycharm и том, как пишут многие люди? Например, я только недавно узнал, что по пепу, который именно у питона, который базовый, то вокруг чего-либо нужно два пробела variable = 123 i_love_bubbles = "hihi" def some_function(argument: str) -> str: return argument.split() Изначально я думал, что это нужно лишь у импортов и классов, типа import module class Aboba: ...
Ну для меня это тоже очевидно, но ведь не стоит забывать что смотрят и новички в том числе, я делаю примеры отталкиваясь от статистики по прошлым видео
@@zproger. Для него наличие новичков, представьте себе, не очевидно =) Видимо он сам когда-то был просто человеком, а потом резко стал программером, ими же так и становятся.
Приветствую, если в классе нужно получать и изменять приватные атрибуты, то в этом плане лучше использовать декоратор property? Благодарю за предоставленную пользу.
Как можно продавать курс за 8к+, рекламируя его в видео, в котором много оговорок, ошибок и т.д.? В котором намешано все в кучу. Отрезок про тестирование - это вообще что-то с чем-то. Видео писалось одним дублем, наскоряк, лишь бы впарить кому-то свой курс? Да и лендинг курса сделан явно на скорую руку - сокращения в тексте, куча бла-бла-бла. На гитхабе проекты не тянут на проекты, написанные по своим же рекомендациям из этого видео. Все те же ошибки, которые в этом видео выдаются за "ужасные". P.S. возможно вы хороший разработчик где-то там, на работе, не в гитхабе, и человек хороший, но если вы продаете курс, обещая в нем ну просто нереальные достижения, то нужно соответствовать уровню. А не вот это вот все! P.S.S. Всем добра!)
Спасибо за конструктивную критику. Не знаю какие оговорки и ошибки вы нашли в этом видео и какие сокращения были в тексте лендинга, это для меня остается загадкой. Если вам не лень, можете поделиться. На счет гитхаба не спорю, код тех проектов ужасен, они писались на скорую руку, причем несколько лет назад, ещё до публикации их на гитхаб и ютуб, удалять их не вижу смысла, так как люди до сих пор используют этот код из старых видео. На счет того, что курс дает много полезных материалов, это факт. Сейчас я могу подтвердить это только на словах(так как недавно был релиз), но когда пройдут глобальные обновления и будут отзывы от участников, я смогу подтвердить и на реальных примерах.
@@zproger ну, я могу накинуть "через вот такой вот разделитель" - забавно так про underscore 😏 Линтер не "позволяет более удобно форматировать ваш код", а указывает на ошибки. То, что вы озвучили, делает форматтер - тот же black или встроенный в IDE Про проектирование вообще без примеров "лист компрехейшнс" - интересное прочтение термина "list comprehension" 😏 "получает из сервера" - как будто прям изнутри достает 🙃 Про тестирование через print() я вообще молчу. Тут либо давайте про pytest и моки, либо про модуль logging хотя бы. А так совсем не промышленная, а кустарная разработка "Есть такие проекты, где гит не нужен: маленькие проекты, либо же где вы уверены, что всё будет нормально" - отличный критерий! Надёжный, б****, как швейцарские часы 😅 Согласно эффекту Даннинга-Крюгера, наиболее уверен именно наименее компетентный Про git ну хоть бы один пример правильно оформленного коммита Ну и говоря про современный Python, особенно ссылаясь на ООП, считаю, нельзя не упомянуть про тайп-хинты. Хоть в одном заготовленном примере бы - Возможно вы и правда очень хороший человек, но ваша лексика, примеры и их отсутствие в самых интересных местах, выдает в вас, в лучшем случае, начинающего мидла 😐 И откуда такая уверенность в себе? Эффект Даннинга-Крюгера? 😏
@@apglazkov Спасибо за критику конечно. Но вам не кажется что это не мои ошибки, а вы просто решили придраться ко всему подряд? Если я сказал лист компрехейшнс, вместо лист компрехейшн, это делает из меня плохого разработчика?) 🙃 Многие моменты я специально объясняю просто, как для детей, чтобы как можно больше людей смогло понять. Я могу сказать underscore, могу каждую элементарную технологию рассматривать до уровня байтов и тянуть видео на 2 часа, но зачем все усложнять? Ну а на счет того что в видео не хватает некоторых моментов, это хороший пример, я стараюсь разделять примеры с кодом на несколько видео, которые идут не больше 15 минут, так как всё что больше 15м людям тяжело смотреть и переваривать. Я понимаю что некоторые хотят увидеть от меня сложные примеры, но не забывайте что разработчиков вашего уровня, которые смогут это понять, их единицы. Поэтому я даю такие примеры, чтобы могли понять как и новички, так и продвинутые разработчики. Видео на сложные темы просмотров не набирают, если от таких видео нет толку, то зачем тогда вообще мне их снимать? Именно поэтому делаю такие видео, которые будут смотреть, и которые будут понятны всем.
@@zproger вы спросили, "какие оговорки", я ответил, - хоть и вместо автора комментария, с которым вполне согласен. Слух резануло с первых же минут, дальше - больше. Для полноценного ответа пересмотрел ролик, собрал детали, чтобы не быть голословным. Ну и да, "list comprehension" во втором прочтении тоже не удался 😏 А вообще, аккуратность и внимание к деталям - один из признаков мастерства Удачи ✊
насколько я знаю в верблюжем (camel case) стиле первая буква первого слова маленькая, а первые буквы остальных слов большие. А это capitalize, когда каждая первая каждого слова с заглавной. camel case: testNameForExample capitalize: TestNameForExample Ну это так :)
@@zproger For clarity, this article calls the two alternatives upper camel case (initial uppercase letter, also known as Pascal case or bumpy case) and lower camel case (initial lowercase letter, also known as dromedary case). en.m.wikipedia.org/wiki/Camel_case Думаю все же Сергей прав
flake8 это костыль над костылем, проект должен быть в одном виде в одном стандарте писаться всеми разработчиками, а не так чтобы каждый в "своем" (как правило колхозном) стиле писал) есть pep8 на этом всё
flake8 и решает эту проблему. Хотя мне конечно всегда хватало одного pep8 для любого проекта, но всё же я думаю неплохо знать о разных инструментах, он может пригодится в дальнейшем
с первого же момента, ну и когда же интересно был принят этот стандарт ? Может стоит вернуться к классике и писать по человечески, что бы было видно где у нас оператор а где значение?
Автор, не знаю где ещё спросить, спрашиваю тут) Я работаю с PyQt5, там можно style sheet прямо в редакторе задавать, а можно как-то задавать его отдельно CSS файлом? Может знаешь какие-нибудь ресурсы, где есть инфа об этом, я обыскался уже, нигде не могу найти😅 Комментаторы, читающие мое сообщение, может вы знаете?)
К виджетам применяется setStyleSheet, в который передаётся строка с CSS. Возможно ты хочешь отдельный CSS-файл, куда задаются все значения, но думаю для этого нужно писать отдельный небольшой парсер CSS.
Есть пакет cssutils, возможно тебе это поможет. Я работал с PyQt, мне не приходилось задавать StyleSheet вне кода или Qt designer, но это вполне возможно. Могут возникнуть проблемы с resource, т.к. в PyQt resource файл нужно превращать в .py, в таком случае лучше перейти на PySide2
зачастую в отдельном CSS-файле проку мало. Лучше сразу все настроить редакторе по ходу пьесы. А если вы хотите сделать подобие тем, то это несколько иначе делается, насколько я видел
А можно сделать в питоне такое вычисление с целыми числами. Мне нужно поделить определенную сумму (500) на определенное количество, пусть на 7 частей. Числа должны быть рандомными. т.е. например, должно получиться 7 чисел:: 57 36 154 94 52 41 180 их сумма не превышает 500. (57+36+154+94+52+41+180=500) То есть что мне нужно от приложения это генерил 7 рандомных чисел в пределе 500 и чтобы их сумма не превышала 500.
Берем случайное число, не превышающее половины от желаемой суммы. Затем берем второе случайное, не превышающее желаемую сумму за исключением полученного ранее числа. Так циклично выбираем числа, пока не осталось выбрать последнее. Последнее число это желаемая сумма минус все полученные ранее числа.
Респект автору за классное и полезное видео. Уважаемый автор, не могли бы вы поподробнее рассказать как безопасно использовать код с pipy через pip. Заранее спасибо)
Поржал с "Даже если вы продвинутый разработчик/у вас много опыта вы допускаете какие-то ошибки". Да, упомянутая категория людей допускает ошибки, как и все, но эти ошибки далеко не того уровня, что в видео. Пилишь ты видео для новичков которые 15 минут назад узнали про питон - ладно. Зачем в названии упоминать Python разработчиков-то? Эти ошибки простительны только для тех кто начал изучать язык либо для ИНТЕРНОВ, но если ты разработчик и допускаешь такие ошибки, то ты 3.14здабол, а не разработчик
Название твоего канала как-то связано с политической ситуацией? Контент вроде не плохой, но иероглиф которым любят обозначать себя фашисты и сторонники насилия не дает мне со спокойной совестью подписаться на твой канал. Ты действительно теряешь много зрителей из-за этого символа, ведь это серьезная тема.
Та какая политика, у меня канал о программировании, нику 3 года, так что это скорее у меня украли эти иероглифы, чем я. Есть полно проектов где буква Z в начале, в середине, в конце, это разве как-то относится к ситуации теперь? Не нужно выдумывать) Я вообще из Украины, да и не составляет труда посмотреть вкладку "о канале", где указывается страна, и также не составляет труда посмотреть историю канала через wayback machine и т.д,. Или вы думаете что я сидел с другим ником, а только ситуация эта наступила, я сразу побежал его менять что ли?) А вот менять ник, который индексировался на протяжении 3х лет, это равноценно тому, что просто удалить канал, и с другой стороны я поменяю ник на CProger к примеру, и завтра на танке напишут эту букву. И что мне опять идти менять ники? Я думаю не стоит так всё серьезно воспринимать.
Какие ошибки из этого видео были у вас?
Есть нюансы с "непонятными коммитами". Например, у меня могут как из пулемёта лететь коммиты с комментом "Bugfix" или "Debug". А всё дело в том, что мой код компилируется (я использую Cython), а его компиляция и последующее тестирование происходит на отдельном сервере под управлением GitLab, Docker и Jenkins с целью обеспечения CI.
И тогда все изменения приходится документировать в описании merge request гитлаба. Такие вот дела.
Очень полезное видео я только, что понял как у меня ужас творится, но спасибо:)
@@m0Ray79 Ну тут проблема в том, что если вам нужно будет откатиться назад, вы не сможете понять где именно лежит нужный вам функционал, из всех коммитов с комментариями "bugfix"
@@zproger Конечно, на уровне git (который я и так презираю), откатиться не получится. Он переусложнён, но притом примитивен до полной неюзабельности.
Зато я cмогу откатиться на уровне Merge Request в GitLab.
Я себя нашел на этом моменте 11:02
Посмотрел почти 14 минут воды. Какой смысл рассказывать про плагины и НЕ показывать их в работе? Тоже самое с фишками, о которых вы говорите: зачем нужен видеоряд с кодом, если работы с ним никакой не происходит? Про гит вообще молчу. Видео называется 10 УЖАСНЫХ ОШИБОК, а тут одна из них - рассказ про гит :))
Да
С pycharm выучить pep8 не сложно) Я смотрел свои первые проекты, там справа область скорллбара вся серая😅
Бывает =))
Я один учил pep8 по ошибкам от pycharm и том, как пишут многие люди? Например, я только недавно узнал, что по пепу, который именно у питона, который базовый, то вокруг чего-либо нужно два пробела
variable = 123
i_love_bubbles = "hihi"
def some_function(argument: str) -> str:
return argument.split()
Изначально я думал, что это нужно лишь у импортов и классов, типа
import module
class Aboba: ...
Ура, видос! Спасибо за контент, у тебя очень полезные видео!
Благодарю 😉
капитан очевидность)
Смотрите видео до конца)
Посмотрел, не просто же так написал
@@zproger про Git, серьёзно? Это все очевидно...
Ну для меня это тоже очевидно, но ведь не стоит забывать что смотрят и новички в том числе, я делаю примеры отталкиваясь от статистики по прошлым видео
@@zproger. Для него наличие новичков, представьте себе, не очевидно =) Видимо он сам когда-то был просто человеком, а потом резко стал программером, ими же так и становятся.
А где тип разработчиков, который в начале пишут тесты, а затем код? Недоработка, уважаемый. )
Приветствую, если в классе нужно получать и изменять приватные атрибуты, то в этом плане лучше использовать декоратор property? Благодарю за предоставленную пользу.
Да, он будет проксировать все действия на указанный атрибут
Как можно продавать курс за 8к+, рекламируя его в видео, в котором много оговорок, ошибок и т.д.?
В котором намешано все в кучу. Отрезок про тестирование - это вообще что-то с чем-то.
Видео писалось одним дублем, наскоряк, лишь бы впарить кому-то свой курс?
Да и лендинг курса сделан явно на скорую руку - сокращения в тексте, куча бла-бла-бла.
На гитхабе проекты не тянут на проекты, написанные по своим же рекомендациям из этого видео. Все те же ошибки, которые в этом видео выдаются за "ужасные".
P.S. возможно вы хороший разработчик где-то там, на работе, не в гитхабе, и человек хороший, но если вы продаете курс, обещая в нем ну просто нереальные достижения, то нужно соответствовать уровню. А не вот это вот все!
P.S.S. Всем добра!)
Спасибо за конструктивную критику.
Не знаю какие оговорки и ошибки вы нашли в этом видео и какие сокращения были в тексте лендинга, это для меня остается загадкой. Если вам не лень, можете поделиться.
На счет гитхаба не спорю, код тех проектов ужасен, они писались на скорую руку, причем несколько лет назад, ещё до публикации их на гитхаб и ютуб, удалять их не вижу смысла, так как люди до сих пор используют этот код из старых видео.
На счет того, что курс дает много полезных материалов, это факт. Сейчас я могу подтвердить это только на словах(так как недавно был релиз), но когда пройдут глобальные обновления и будут отзывы от участников, я смогу подтвердить и на реальных примерах.
@@zproger ну, я могу накинуть
"через вот такой вот разделитель" - забавно так про underscore 😏
Линтер не "позволяет более удобно форматировать ваш код", а указывает на ошибки.
То, что вы озвучили, делает форматтер - тот же black или встроенный в IDE
Про проектирование вообще без примеров
"лист компрехейшнс" - интересное прочтение термина "list comprehension" 😏
"получает из сервера" - как будто прям изнутри достает 🙃
Про тестирование через print() я вообще молчу.
Тут либо давайте про pytest и моки, либо про модуль logging хотя бы.
А так совсем не промышленная, а кустарная разработка
"Есть такие проекты, где гит не нужен: маленькие проекты, либо же где вы уверены, что всё будет нормально" - отличный критерий! Надёжный, б****, как швейцарские часы 😅
Согласно эффекту Даннинга-Крюгера, наиболее уверен именно наименее компетентный
Про git ну хоть бы один пример правильно оформленного коммита
Ну и говоря про современный Python, особенно ссылаясь на ООП, считаю, нельзя не упомянуть про тайп-хинты.
Хоть в одном заготовленном примере бы
-
Возможно вы и правда очень хороший человек, но ваша лексика, примеры и их отсутствие в самых интересных местах, выдает в вас, в лучшем случае, начинающего мидла 😐
И откуда такая уверенность в себе?
Эффект Даннинга-Крюгера? 😏
@@apglazkov Спасибо за критику конечно. Но вам не кажется что это не мои ошибки, а вы просто решили придраться ко всему подряд? Если я сказал лист компрехейшнс, вместо лист компрехейшн, это делает из меня плохого разработчика?) 🙃
Многие моменты я специально объясняю просто, как для детей, чтобы как можно больше людей смогло понять.
Я могу сказать underscore, могу каждую элементарную технологию рассматривать до уровня байтов и тянуть видео на 2 часа, но зачем все усложнять?
Ну а на счет того что в видео не хватает некоторых моментов, это хороший пример, я стараюсь разделять примеры с кодом на несколько видео, которые идут не больше 15 минут, так как всё что больше 15м людям тяжело смотреть и переваривать.
Я понимаю что некоторые хотят увидеть от меня сложные примеры, но не забывайте что разработчиков вашего уровня, которые смогут это понять, их единицы. Поэтому я даю такие примеры, чтобы могли понять как и новички, так и продвинутые разработчики. Видео на сложные темы просмотров не набирают, если от таких видео нет толку, то зачем тогда вообще мне их снимать? Именно поэтому делаю такие видео, которые будут смотреть, и которые будут понятны всем.
@@zproger вы спросили, "какие оговорки", я ответил, - хоть и вместо автора комментария, с которым вполне согласен. Слух резануло с первых же минут, дальше - больше. Для полноценного ответа пересмотрел ролик, собрал детали, чтобы не быть голословным.
Ну и да, "list comprehension" во втором прочтении тоже не удался 😏
А вообще, аккуратность и внимание к деталям - один из признаков мастерства
Удачи ✊
Когда делают дохера файлов по 1 строчке в каждом...
Обратититься в "защищенным" свойствам класса вполне можно. И изменить их так же можно.
12:08 вот когда такое написал, главное - случайно не запустить ))))))))
Согласен, но в данном случае даже если запустить, то ничего не произойдет, у редактора нет прав рута
@@zproger всеравно, опасные действия)
Для тех кто смотрит это в 2к23-ем: вместо flake8 используйте ruff как линтер, а для форматирования - black
насколько я знаю в верблюжем (camel case) стиле первая буква первого слова маленькая, а первые буквы остальных слов большие. А это capitalize, когда каждая первая каждого слова с заглавной.
camel case: testNameForExample
capitalize: TestNameForExample
Ну это так :)
Может
PascalCase
camelCase
snake_case
ru.wikipedia.org/wiki/CamelCase
@@zproger For clarity, this article calls the two alternatives upper camel case (initial uppercase letter, also known as Pascal case or bumpy case) and lower camel case (initial lowercase letter, also known as dromedary case).
en.m.wikipedia.org/wiki/Camel_case
Думаю все же Сергей прав
Странно, во всех книгах пишут об этих верблюдах) Думаю надо у верблюда спросить, как более правильно писать в его стиле 😁
@@FOUREX_dot_py Да
camelCase, PascalCase, snake_case, kebab-case, UPPER_SNAKE_CASE. Ну вроде всё
flake8 это костыль над костылем, проект должен быть в одном виде в одном стандарте писаться всеми разработчиками, а не так чтобы каждый в "своем" (как правило колхозном) стиле писал) есть pep8 на этом всё
flake8 и решает эту проблему. Хотя мне конечно всегда хватало одного pep8 для любого проекта, но всё же я думаю неплохо знать о разных инструментах, он может пригодится в дальнейшем
большие словари я пишу в несколько строк, а мелкие в одну.. рип
=(
с первого же момента, ну и когда же интересно был принят этот стандарт ?
Может стоит вернуться к классике и писать по человечески, что бы было видно где у нас оператор а где значение?
Ух. По пробелам рядом с = ... Привык. Всегда так пишу... ВСЕГДА. В том числе в скриптах. Вот только в шеллах это не вопрос стиля, а ошибка )
=))
@artcom4307читабельность.
Автор, не знаю где ещё спросить, спрашиваю тут)
Я работаю с PyQt5, там можно style sheet прямо в редакторе задавать, а можно как-то задавать его отдельно CSS файлом? Может знаешь какие-нибудь ресурсы, где есть инфа об этом, я обыскался уже, нигде не могу найти😅
Комментаторы, читающие мое сообщение, может вы знаете?)
К виджетам применяется setStyleSheet, в который передаётся строка с CSS. Возможно ты хочешь отдельный CSS-файл, куда задаются все значения, но думаю для этого нужно писать отдельный небольшой парсер CSS.
Есть пакет cssutils, возможно тебе это поможет. Я работал с PyQt, мне не приходилось задавать StyleSheet вне кода или Qt designer, но это вполне возможно. Могут возникнуть проблемы с resource, т.к. в PyQt resource файл нужно превращать в .py, в таком случае лучше перейти на PySide2
зачастую в отдельном CSS-файле проку мало. Лучше сразу все настроить редакторе по ходу пьесы. А если вы хотите сделать подобие тем, то это несколько иначе делается, насколько я видел
4:41 Одно слово: TDD
=)
А можно сделать в питоне такое вычисление с целыми числами.
Мне нужно поделить определенную сумму (500) на определенное количество, пусть на 7 частей. Числа должны быть рандомными.
т.е. например, должно получиться 7 чисел:: 57 36 154 94 52 41 180
их сумма не превышает 500. (57+36+154+94+52+41+180=500)
То есть что мне нужно от приложения это генерил 7 рандомных чисел в пределе 500 и чтобы их сумма не превышала 500.
Можно всё.
Берем случайное число, не превышающее половины от желаемой суммы. Затем берем второе случайное, не превышающее желаемую сумму за исключением полученного ранее числа.
Так циклично выбираем числа, пока не осталось выбрать последнее.
Последнее число это желаемая сумма минус все полученные ранее числа.
from random import choice
s = 500
n = 7
l = []
for i in range(n-1):
l.append(choice(range((s-sum(l))//2)))
l.append(s-sum(l))
Благодарю, ценная идея когда научусь писать модули буду вставлять код который ****ет данные юзера
Это того не стоит =)
Респект автору за классное и полезное видео. Уважаемый автор, не могли бы вы поподробнее рассказать как безопасно использовать код с pipy через pip. Заранее спасибо)
Благодарю, возможно напишу статью в телеграм канал либо приват
кэп
0_0
Поржал с "Даже если вы продвинутый разработчик/у вас много опыта вы допускаете какие-то ошибки". Да, упомянутая категория людей допускает ошибки, как и все, но эти ошибки далеко не того уровня, что в видео. Пилишь ты видео для новичков которые 15 минут назад узнали про питон - ладно. Зачем в названии упоминать Python разработчиков-то? Эти ошибки простительны только для тех кто начал изучать язык либо для ИНТЕРНОВ, но если ты разработчик и допускаешь такие ошибки, то ты 3.14здабол, а не разработчик
Чел, хватит говорить о том, о чем не показываешь
Спасибо, исправлюсь в новых видео
Ты хочешь сказать что я не адекватный?
Почему?)
второй
Я первый =)
Название твоего канала как-то связано с политической ситуацией? Контент вроде не плохой, но иероглиф которым любят обозначать себя фашисты и сторонники насилия не дает мне со спокойной совестью подписаться на твой канал. Ты действительно теряешь много зрителей из-за этого символа, ведь это серьезная тема.
Та какая политика, у меня канал о программировании, нику 3 года, так что это скорее у меня украли эти иероглифы, чем я. Есть полно проектов где буква Z в начале, в середине, в конце, это разве как-то относится к ситуации теперь? Не нужно выдумывать) Я вообще из Украины, да и не составляет труда посмотреть вкладку "о канале", где указывается страна, и также не составляет труда посмотреть историю канала через wayback machine и т.д,.
Или вы думаете что я сидел с другим ником, а только ситуация эта наступила, я сразу побежал его менять что ли?)
А вот менять ник, который индексировался на протяжении 3х лет, это равноценно тому, что просто удалить канал, и с другой стороны я поменяю ник на CProger к примеру, и завтра на танке напишут эту букву. И что мне опять идти менять ники? Я думаю не стоит так всё серьезно воспринимать.