Хотелось бы получить совет, возможно ли в моей сугубо продуктовой деятельности использовать гибкие методологии / или я уже ее использую?Попробовать можно конечно, но вы вероятно не совсем понимаете чем разработка ПО отличается от разработки дизайна для сувениров и т.д. В большинстве случаем разработка продукта длится от 3 месяцев до нескольких лет, и при помощи методологии пытаются разбить задачи и обозначить какие-то сроки по внедрению функционала. В целом скрам не всегда подходит, т.к. разработка некоторых фич может занимать несколько месяцев(иногда конечно завышают сроки), но суть в том что формально по скраму уже не получится работать и если слепо следовать идеологии, то можно принести больше вреда чем пользы.
Просто, например Сазерленд (создатель скрама) утверждает, что за гибкими методологиями будущее, а всякие водопады должны кануть к лету. И только используя скрам можно повысить работоспособность команды до 800%.Сказать можно много чего, человек зарабатывает на продаже своей идеи и логично что он будет её продвигать. Интересно посмотреть как именно скрам повысил производительность на 800%( хз что он вообще под этим подразумевает), в ряде областей скрам полезен, но чаще проблема просто в том, что менеджмент неэффективный, т.к. руководитель просто не понимает специфику своей работы или работы команды, я например видел пример того что руководитель просил каждый день писать отчет о проделанной работе и разбивать это по часам, в итоге на бумаге всё "хорошо" было а на практике это была худшая команда в плане выпуска продуктов и атмосферы.
И я хочу сделать 1 модуль который они будут импортировать с некоторым набором общих для них функций.Если хотите так сделать, то можно просто сделать интерфейс, у которого методы будут совпадать с общими функциями которые вы хотите вынести, можете его вынести в отдельный файл/модуль при необходимости.
Я часа 4 ковырялся в статьях и видео уроках но так и не смог из 1 несчастного модуля импортировать функции в другой неменее несчастный модульМожно упрощенную версию сюда выложить и конкретнее написать что не получается
дорожная карта для web разработки на pythonВ целом веб разработка не привязана к какому-либо языку, например вопрос с авторизацией пользователей часто решается при помощи cookie/jwt и по сути никак не связан с питоном. Т.е. тебе не нужна карта конкретно под питон, а нужна карта под бэк/фронт
Всякие там протоколы сетевые, ну то есть хочу не просто клипать тупо, а понимать как все между собой связано,Можешь пройти курс по сетям, хотя в целом например мне понимание того как работает OSPF, BGP не особо помогает, TCP/udp полезно, но конкретно в питоне редко используется напрямую.
фантомное, грязное чтение и подобное
Для решения я открывал параллельные соединения с БД
Использовал уровень изоляции serializableОн защищает от ошибок с транзакциями, и по сути просто отменяет их в случае ошибок и показывает что была попытка неправильно использовать транзакцию, исправить ошибки в транзакциях он не может.
На форумах пишут "нужно грамотно управлять пулами соединений", но что это значит? Где про это прочитать?Лучше там спросить, что они имеют ввиду.
И я убрал параллельные соединения и сделал транзакции через основное соединение с БД (то, которое при запуске открывается и больше не закрывается), и это заработало, но теперь так как соединение одно, каждый юзер вынужден ждать завершения транзакций всех остальных юзеров.Как бы пользователь в любом случае должен ждать пока другие транзакции завершатся, пул соединений полезен тем, что другие запросы не связанные с этой таблицей могу параллельно выполняться.
Предлагают пройти профориентацию в IT, а в школе почти полностью отсутствовала информатика.Не совсем понятно что подразумевается под профориентацией. Если это просто проверка на то чем хочется заниматься или есть ли этому склонность, то не думаю что нужно как готовиться. Больше влияет, хочешь ли ты этим заниматься и есть ли тяга в целом к IT(если что это большая область а не только программирование).
Где можно быстро догнать основные темы?Если нужна именно школьная информатика, то можно поискать учебники, если непонятно в учебниках, то можно зайти на ютуб и написать "информатика плейлист/плейлисты" простой курс, 10-11 класс, курс посложнее(понадобится гуглить дополнительно скорее всего и искать ответы на непонятные темы)
Кто-нить может поделится толковым материаоаии по данной тематике.На мой взгляд если так ставится вопрос, то есть ощущение, что вам не особо и нужны микросервисы. Микросервисы это просто подход к организации приложения, который имеет свои плюсы и минусы.
Где доходчиво объяснено как их создавать
обновлялся счетчик отправленных сообщенийНужно отдельное API которое будет возвращать тебе значение счетчика для текущего чата, например по id чата. На стороне клиента нужно использовать js, сейчас обычно используют fetch реже XHR, соотвественно в js тебе нужно будет запустить фоновый процесс который будет опрашивать сервер раз в секунду например и обновлять счетчик
и раньше на одной слабой VPS с 512 оперативы я мог запустить штук 5 не требовательных сайтов и они бы все леталиЕсли сервер бьет по финансам, то по моему стоит настроить прод без докера, т.к. докер в целом это не про экономию ресурсов а про удобство и изолированность.
Мне также очень нравится то, что БД пишет данные в volume, который потом можно сжать и скопировать на другой сервер, а не охреневать когда надо перенести базу на сотни гиговЧестно говоря не понял особой разницы в прямом экспорте из базы, который можно также дампить в архив и в архивации volume, по сути одно и тоже.
Я думал построить авторизацию на JWT токенах, а токены хранить в базе.В целом сейчас это популярный способ для аутентификации, только особенность в том, что хранить токены в базе - это противоречие самой концепции JWT(но многие все равно так делают), т.к. эти токены должны проверяться только сервером на валидность без обращения к БД. Плюс jwt довольно легко неправильно сконфигурировать, в общем если у вас по сути монолитный проект, то jwt не особо и нужен и вполне все можно сделать на куках. Но если хотите использовать jwt, то стоит прочитать про access и refresh токены, какую инфу не стоит хранить в токене и какие алгоритмы выбрать для настройки.
как правильно настроить TOR чтобы весь выход в инет был сразу через TORСлишком абстрактная формулировка вопроса. отсюда можно начать. В целом если нужно для браузера или какого-то софта, то лучше прописать в самом софте или браузере socks прокси от тора
В целом можно ответить, что так решили разрабы, но в целом это логично, т.к. при присовении нового значения вы ничего не делаете с переменной, т.е. она фактически просто занимает память и не используется ни в каком выражении.
Вопрос: Почему присвоение переменной значения не считается использованием ?
value = value + 1В целом по логике этот случай тоже можно было бы отнести к неиспользованию, но вероятно тут такая логика, что это значение используется для вычисления нового значения, что по сути является использованием, компилятор не чекает используется дальше вычисленное значение но в данном случае это уже не особо и важно. В целом для обход not used есть такой способ
// No errors
a:= 1
b := 2
_, _ = a, b
Или, может быть, поделитесь опытом использования на производстве.Хз что подразуемевается под серьезным проектом. На практике их получается не так часто использовать. Например изнально была функция, которая на вход получала слайс и преобразовывала его в таски и помещала в пул , потом добавилось несколько других источников данных, с которыми нужно было тоже самое делать. В целом форматы данных отличались, но всё можно было преобразовать к общему формату. Выделил общие методы и использовал дженирики. В целом можно было бы обойтись и без них, но в моей ситуации это было довольно удобно, по сути можно было бы заменить интерфейсом.
Гугл с ошибкой не помог :(
sql: Scan error on column index 1, name "i_size": converting driver. Value type int64 ("-10") to a uint8: invalid syntaxМожно попробовать еще прочитать ошибку или засунуть ее в гугл переводчик.
connection to server at "db" (172.24.0.3), port 5433 failed: Connection refusedТут напрямую говорит вам, что проблема в подключении к БД, т.е. идёт попытка коннекта к 5433, но на нём либо ничего нет, либо соединение блокируется( в большинстве случаев там ничего нет)
Не хочется выучить язык, а потом понять, что зная его синтаксис и всякие там рекурсии и подобное, смотришь на задачи как баран на воротаВ целом математика не особо нужна для 90% задач(конкретно в js и верстке это еще менее востребованно, лучше уделить время практическим вещам). Чтобы научиться решать такие задачи можно почитать конкретно про алгоритмы(одна из популярных книг это грокаем алгоритмы) и решать такие задачи, если вообще никак не получается, то изучайте другие решения и пытайтесь понять их.
Может есть какие-то хорошие сайты в интернете по математике для полных нулей в этой теме.Но если вы все же решили это делать, то честно говоря хз зачем вам нужен конкретный сайт или книга, если что-то не понимаете, то вы можете вбить в ютубе гугле "математематическая индукция простыми словами пример", а основную книгу использовать больше как путеводитель. Сейчас по математике на таком уровне просто огромное число видео, если мало информации на русском, то можно залезть в англоязычный интернет, где еще больше объяснений.
"дискретная математика для программистов"Конкректно это книга является очень популярной и часто рекомендуется, соотвественно можно предположить, что много кто по ней задавал вопросы и вероятно кто-то выложил решение задач в сеть например сюда, также хорошим приёмом будет поиск на английском, если на русском ничего не нашли. При чем ответы по похожим книгам есть смысл дополнительно искать на гитхабе.
Тем более работодателю ведь, как я понял, и важнее всего навык решения таких вот задач...Этот навык не важнее всего. И на конкретко такие задачи реально полезны, т.к. в них встречаются базовые вещи, которые будут реально нужны в работе.
В связи с этим приходится самостоятельно вырабатывать подходы для разработки на немФреймворк может быть и новым, но никто не запрещает посмотреть примеры на том же джанго или фласке, т.к. в большинстве случаев разница между подходами не такая большая.