Форум сайта python.su
Всем привет!
Пишу в “Python для экспертов”, хотя экспертом в Python не являюсь. Писал еще в 2007-2008 годах на нем месяцев 9. Затем в 2013-м учавствовал в небольшом проекте меньше года. Довелось даже попреподавать его студентам, но это так…
Дело в том, что меня пригласили быть тимлидом в новый перспективный проект с микросервисной архитектурой, настолько новый, что в нем еще ни строчки кода нет. Опыт в создании таковых проетов с нуля у меня есть. Мой прошлый проект таковым и был: ядро системы состоящее из больше чем сорока программ на Ruby, вокруг этого всего балаган других микросервисных “независиых” систем на php, python, С# и прочем.
Инвестор пришел со своей “сильной” командой python-разработчков и хочет, чтобы это все началось именно как python-проект. Ребята вроде толковые, только на мой взгляд в проектах такого масштаба не варились и ничего кроме Django не знают и не хотят. Не хочу ничего плохого сказать про Django, но она не подойдет, тут я просто давлю на всех авторитетом, даже объяснить ничего не пытаюсь. Да, микросервисы общаются друг с другом по HTTP, но у них нет и не будет никакой клиентской части. Почти уверен, что мы свой протокол вообще придумаем, как это было у меня раньше. Т.е. никая джанга из мира питона, никакие рельсы из мира руби и прочие фреймворки не подойдут. Может где-то будет Flask или мой любимый Pyramid, но не факт, я их упомянул, просто потому что из мира Python я больше ни с чем достойным не работал.
Времени до старта проекта достаточно много и я хочу начать готовиться уже сейчас. Моя просьба ко всем читающим общем смысле такая “Как принято вести разработку на Python сейчас, в 2019-м году?”. В частности мои вопросы такие:
1 Лучшие практики Python в микросервисах;
2 Есть что-то типа dry-rb.org (набор крутых современных Ruby-библиотек, позволяющих облегчить построение архитектурны) в Python-сообществе?
3 Любые другие советы, лучшие современные практики.
Спасибо всем большое.
P.S. Я понимаю, что даже если сам осилю все те вопросы, которые задал, у меня скорее всего не получится сильно изменить команду и они будут заниматься той разработкой которой привыкли, но я все же буду пытаться влиять
P.P.S. Форум и сайт живые? На сайте последний пост за 2016-й. Я примерно тогда последний раз сюда заходил. Подскажите, пожалуйста любой другой живой Python-форум, можно на английском языке.
Офлайн
ksimmiМожет вам не стоит быть тимлидом если вам нужна посторонняя помощь чтобы отличить форум с ежедневной активностью от форума не активного с 16 года?
Форум и сайт живые?
ksimmiСильно попахивает дилетантизмом. Также как и всегда, и также как и на любом другом языке. Надеюсь вы не ищете волшебной пули и волшебной технологии?
Как принято вести разработку на Python сейчас, в 2019-м году?
ksimmiНе подскажу, думаю тут есть люди которые это лучше знают.
Лучшие практики Python в микросервисах;
ksimmiВсе не пролистал, но похоже что практически все входит в ядро языка или стандартные библиотеки.
Есть что-то типа dry-rb.org
ksimmiКонкретно опишите проект тогда получите конкретные советы.
Любые другие советы, лучшие современные практики.
Офлайн
ksimmiНа втором питоне писал? Это значит, нужно третий изучать.
Писал еще в 2007-2008 годах на нем месяцев 9.
ksimmiА смысл? От нечего делать что ли?
Довелось даже попреподавать его студентам
ksimmiНу, показал бы ядро. Интересно посмотреть.
Мой прошлый проект таковым и был: ядро системы состоящее из больше чем сорока программ на Ruby
ksimmiДа как-то не верится в эту “команду”. Проект с нуля, при этом “тимлид” ничего не знает. Одновременно с этим в “команде” есть более опытные питонисты/джангисты, но при этом среди них не выбирается тимлид. То есть “инвестор” хочет сразу затормозить проект, ещё даже не начав его. Что-то не складывается как-то логика.
у меня скорее всего не получится сильно изменить команду и они будут заниматься той разработкой которой привыкли
Офлайн
doza_and, py.user.next
При всем уважении, я тут не для обсуждения своей компетенции и вашей веры в меня. Как вы могли заметить, у меня даже конкретного вопроса нет, соответственно от отвечающих я ожидаю не набор конкретных “волшебных пуль”, а “пищи для размышлений”.
Ну например, когда-то я нормально (по своему собственному мнению) писал на Ruby, был доволен своим продуктом. Затем появился добрый человек на конфе и просто рассказал про упомянутый мной же dry-rb, с хорошим обоснованием. Для меня тогда Ruby-разработка изменилась.
Вот, чего-то такого я и жду от отвечающих. Все, что угодно - я конкретней не скажу. Мне просто нужны “добрые советы” и рекомендации по стеку. Меня интересует именно уровень языка, ни докеры, ни БД, ни микросервисная архитектура - только лишь сам Python. Я в Python-тусовке не варился. Я готов ознакомиться с огромным количеством материала. Было бы, что читать.
Задача решаемая мной, ИМХО, не важна, потому что у меня нет конкретных трудностей. Я знаю как и что будет реализовано, особенно если абстрагироваться от языка. Мне, извините за такое высокомерие, все-равно на чем писать. Я знаю как это все сделать со своими низкими нвыками Python-разработчика. Но я хочу нарастить свою компетенцию именно, как Python-разработчика. Все потому, что я хочу сделать приложение, которое будет легко поддерживать.
Я не верю, что задал какой-то неправильный или глупый вопрос. Возможно я просто не понят. Потому что на такие вопросы часто бывает трудно отвечать потому что отвечающему кажется, что его ответ очевиден. На какую ORM стоит смотреть? какой фреймворк? какие библиотеки? на чем лучше всего писать тесты?… Обычный ответ “тот иснтрумент в котором разбираешься - тот и используй”, дело в том, что в Python у меня еще нет инструментов в которых я разбираюсь. Ну и я не хотел например бы разрабатывать какой-нибудь автомобиль с паровым двигателем в 2019-м, когда я мог бы селать электрокар.
Спасибо всем за внимание.
Отредактировано ksimmi (Сен. 12, 2019 12:36:15)
Офлайн
ksimmi
Возможно я просто не понят.
ksimmi
экспертом в Python не являюсь
ksimmi
пригласили быть тимлидом в новый перспективный проект
ksimmi
Затем появился добрый человек на конфе и просто рассказал про упомянутый мной же dry-rb, с хорошим обоснованием. Для меня тогда Ruby-разработка изменилась. Вот, чего-то такого я и жду от отвечающих.
ksimmi
Задача решаемая мной, ИМХО, не важна, потому что у меня нет конкретных трудностей.
ksimmiВы вообще никакого вопроса не задали. Вам, как вы выражаетесь, просто нужны “добрые советы” и рекомендации по стеку. Совет - берите в руки учебник и читайте, только таким образом вы приобретете какие-нибудь знания. А в тимлиды своего проекта пригласите человека, который сам способен раздавать добрые советы, потому что опыт приобретается трудом, потом, ошибками и факапами, а не добрыми советами. Вы собираетесь брать на себя ответственность за судьбу “перспективного проекта” на основании добрых советов на форуме? Или основываясь на своем богатом опыте - 9 месяцев джуном десять лет назад?
Я не верю, что задал какой-то неправильный или глупый вопрос.
ksimmiОх..еть!!!
тут я просто давлю на всех авторитетом, даже объяснить ничего не пытаюсь.
Офлайн
Ладно, моя ошибка просить форум о помощи. Как давно я не был на форумах… Давно забытое чувство мокания самого себя в говны .
Народ, вопрос снимается, буду искать ответы не на форумах. Всем, проявившим внимание к моим постам - спасибо огромное.
Но хочу высказаться, хотя и понимаю, что всем пофиг. Тем не менее я был удивлен моим текущим диалогом с форумом.
В целом смешно. Я не могу быть тимлидом? Просто потому что я не знаю Python? Уму не постижимо! Во-первых, я его знаю, просто у меня язык не поворачивается назвать себя экспертом, т.к. сложных вещей не делал. Во-вторых, для того, чтобы быть тимлидом вообще не нужно знать конкретный язык на старте проекта. Я в этом убедился, когда работал со своим замечаетльным бывшим коллегой и ментором, который как-раз и был нашим тимлидом пришедшим к нам с другого стека.
Не знаю, что за ограниченность и придирки к словам. Я могу быть тимлидом, просто потому что я УЖЕ тимлид, давно и не в первом проекте, а то, что я язык знаю плохо (и то только по своей субъективной оценке) - не приграда. Я постарался написать свой вопрос максимально нейтрально, хотел сказать, что я с одной стороны опытный специалист и передо мной нет стратегических трудностей, а с другой - у меня большие пробелы в стеке и соответственно проблемы тактические. Все отписавшиеся же только и пытаются в той или иной форме высказать, что у меня ничего не получится.
У меня не было задачи убедить форум, в том, что я достоин быть тимлидом, да я и не убеждал, я прочитал свой пост - там такого нет. У меня была убежденность, что мне просто помогут или проигнорят. Ну не понравилось то, что я пишу - зачем отвечать? Никакая полемика мне не интересна.
Я бы мог написать нечто такое:
Я умею разговаривать на языке заказчика и доность цели и ценности задач до команды. Умею направлять затрудняющихся коллег в нужное русло. Умею планировать и соблюдать сроки. Умею отвечать за несоблюдение сроков и прочие косяки. Люблю и умею написать образец кода “как делать нужно” и предоставить его в качестве примера коллегам. Вот ради последнего пункта я и создавал текущий топик, я просто хотел большей уверенности. Команда, которую мне хотят подсунуть вообще лохи не решавшие серьезных задач, они даже тести никогда не писали, НИКАКИЕ! Ни модульные, ни интеграционные! CI никогда не смотрели!
Вот, если бы я так написал (а это правда), я бы понял стеб над собой или стеба надо мной было бы еще больше, также как и сомнений, что с такой командой я что-то смогу!
Я же просто упомянул, что я какой-то опытный тимлид, у меня какая-то python-команда и то, что я плохо знаю Python.
Все подробности не нужны, потому что все решаемо: В Python я разберусь; будет надо, я либо научу команду рабоатть так как мне надо, либо выдавлю каждого неугодного заменив теми, кто мне подходит.
Повторюсь, что не верю, что задал неправильный или смешной вопрос. Python развивающийся язык, один из самых популярных. Я уверен, что здесь и сейчас есть мастхев, который форумчане могли бы мне посоветововать и этот мастхев у каждого свой, например pyenv вместо virtualenv.
P.S. Извините за многобукв, я иногда люблю так графоманить , в осноновном в тикетах ;-p .
Отредактировано ksimmi (Сен. 12, 2019 14:22:29)
Офлайн
> Как принято в современном Python? Так, чтобы стильно и молодежно
“Стильно и молодёжно” это когда ты ходишь с ойфоном, но выглядешь как бомж. В программировании нужно руководствоваться другими принципами.
> Как принято вести разработку на Python сейчас, в 2019-м году?
В сети полно видео с конференций типа “Piter Py”, “PyCon Russia” и подобных. Вот их посмотрите, там любят на подобные темы трепаться.
Отредактировано Rodegast (Сен. 12, 2019 14:45:37)
Офлайн
ksimmi
Ладно, моя ошибка просить форум о помощи. Как давно я не был на форумах… Давно забытое чувство мокания самого себя в говны
Офлайн
FishHook
Я вас понимаю, вы привели пример вопроса, в котором у задающего конкретики больше, а сама проблема относительно проекта. Я как раз хотел сформулировать относительно проблемы во мне. Я не был в Python с 2013-го года. Давайте еще пример приведу того, что я хотел.
Пример 1: В 2013-м я попал в Python-проект проект на 3-м питоне проект был с нуля. Был опытный руководитель, который вел себя примерно так:
Django? Вы серьезно? 2013-й на дворе, мы выбрали 3-й питон, а не 2-й. Забудьте вы об этом концентрате прошлого. Да, они недавно выпустили релиз который поддерживает 3-й питон. Но зачем выбирать ее? Мы можем взять, что-то что сразу было создано под 3-й, например Pyramid. Давайте будем современными!
virtualenv? Я, конечно, ничего плохого против него не имею, но он же неудобный, 2015-й на дворе. Сейчас есть удобнейший pyenv… Для управления зависимостями используйте pundler
Офлайн
ksimmi
Django? Вы серьезно? 2013-й на дворе, мы выбрали 3-й питон, а не 2-й. Забудьте вы об этом концентрате прошлого. Да, они недавно выпустили релиз который поддерживает 3-й питон. Но зачем выбирать ее? Мы можем взять, что-то что сразу было создано под 3-й, например Pyramid. Давайте будем современными!
ksimmiПотому что нет никакого универсального ответа и быть не может. Знаете, почему нас окружает разнообразие выборов? Почему у меня макбук, а у моего коллеги сони, почему я ношу короткую прическу, а коллега длинную, почему я пью пиво, а коллега кока-колу? Потому что у всего есть плюсы и минусы, нет универсального решения “как лучше”.
на форуме я уж точно получу ответ, но ни тут то было
Офлайн