BufWriter<Master<'_>> – Telegram
BufWriter<Master<'_>>
105 subscribers
451 photos
28 videos
34 files
1.7K links
https://www.patreon.com/alxe_master

Видео/статьи. Конспект и мои вольные комментарии по инженерии. тут только то, что считаю полезным для себя или других =)

#os, #cloud, #rust, #golang, #python, #javaScript, #cpp, etc
Download Telegram
еще один сервис по анализу EXPLAIN
https://explain.tensor.ru/about/#expanded
гниЛаб 😂😂

#autotomated
== Простые highload паттерны на Go
https://habr.com/ru/post/682618/

- Refresh-ahead caching
Если по бизнес логике вашего приложения допустимо отдавать данные не первой свежести, то кешируйте их в приложении и отдавайте как есть. А сами данные обновляйте в фоне

- Do once, give it to everyone
Если много пользователей приходят одновременно в сервис за одной и той же информацией, зачем ее выполнять в лучшем случае дважды, а в худшем тысячи раз?

- Worker pool
на старте приложения инициализировать N воркеров, которые будут выполнять полезную работу, и сбрасывать состояние объектов воркера после завершения задачи

== Средние highload паттерны на Go
https://habr.com/ru/post/684904/

- Stateless horizontal scaling
Есть приложение, которое крутится в бою и вполне себе успешно выполняет свою работу. Постепенно трафик растет, пользователи становятся ненасытнее и все активнее пользуются приложением. И вот настигает пик, при котором CPU/RAM физически уже не хватает и требуется принять меры. Решение простое и очень эффективное - создать реплики приложения

- Sync to async
Есть приложение, в котором активно растет трафик и помимо основных, оно выполняет еще и вспомогательные функции, которые с ростом трафика начинают влиять на пользовательский опыт. Так почему не выполнять вспомогательные функции асинхронно?

- SQL to NoSQL
Есть приложение, в котором есть одно хранилище под все и, как правило, это какая-нибудь реляционная база данных. Уезжать из него очень не хочется, но пользовательский трафик растет с такой скоростью, что поддержание одного такого хранилища обходится дорого. - заюзать витрину nosql
== The dangers of assert in Python
https://snyk.io/blog/the-dangers-of-assert-in-python/
елси коротко - то не юзайте отлов ассертов в коде. это не сэйф. ассерты только для того чтобы майпай спокойно спал и в тестах помогает и в дебаг режиме для реализации Дефенсив-Программинг
Forwarded from S0ER
По обсуждению в предыдущем посте понял, что надо пояснить важную вещь: возможно ли из сеньера подняться в архитекторы?
Ответ - да.
Но надо понимать несколько важных вещей:
1. Я под "архитектором" в первую очередь понимаю "архитектора решения", есть еще "архитектор предприятия", "Архитектор ПО" и т.д. Самый близкий к программисту "Архитектор ПО".
2. Любой программист может влиять на свое развитие и только он определяет где работать, над какими проектами, на чем фокусироваться. Если программист хочет быть архитектором, то и фокусироваться надо на архитектуре, если тимлидом, то на управлении, если просто хочет писать код, то соответственно качать скилы разработчика;
3. Если вы решили, что код вам не интересен, а хочется в архитектуру, то вам все равно придется изучать программирование и расти как программист, потому что вам нужно будет найти работу где есть архитектор и архитектурные процессы. Сразу на архитектора "по курсам" не получится или это будет условный "архитектор ПО", которые так же пишет код как и все. но просто вот так называется.
4. Для архитектора важно качать не только программирование, но и знание инфраструктурных решений, понимать работу девопсов, уметь собирать требования и анализировать. В целом хорошо уметь в "абстракции". Архитектор должен уметь выражать мысли в понятиях отличных от кода. Соответственно надо смотреть не только на свою область, но и понимать как работают ваши коллеги. Не погружаясь глубоко, но в то же время понимая что и для чего использует ваша компания.
5. Если вы уже сеньер, в вашй компании есть архитектор решения и есть архитектурные процессы, то надо подключаться к ним. В каждом конкретном случае это может быть разные действия. У меня, например, входом послужило участие в "архитектурном комитете", я там изначально просто консультировал по техническим вопросам. А потом начал готовить требования, визировать решения по архитектуре в технической части.
6. Самое главное понимать, куда вы движетесь. Если вы просто ходите на работу, делаете задачи которые вам поручают, и просто стараетесь хорошо выполнять свою работу. То вряд-ли это приведет к тому, что вам начнут предлагать должности из тругих секций (неважно, тимлид или архитектор или еще что-то).
Forwarded from Senior Python Developer
Получаем информацию о системе своего компьютера с помощью Python

Получение системной информации для вашей системы может быть легко выполнено используемой операционной системой, скажем, Ubuntu. Но не будет ли забавно получить эту системную информацию с помощью скрипта Python?

Установка модуля - pip install platform

Подробнее можно почитать здесь.
Forwarded from Python Learning
Скачиваем HTML-код страницы с помощью Python

С помощью следующего фрагмента кода мы можем с легкостью получить HTML-код страницы в интеренете.
потрясающе. половина интернету не знает правильный ответ на ну очень простой вопрос
Forwarded from data будни (Саша Михайлов)
Английский в вакууме не котируется

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

Поработав какое-то время, понял, что за всё время никто меня так и не попросил поговорить по английски или прочитать что-то. Так это не работает.

Просто так складывается, что всё самое новое и интересное в отрасли сначала публикуется на английском. Если интересна отрасль, то идешь и изучаешь.

То есть я думал, что связь прямая:
английскийбольше зарплата

А на самом деле она косвенная:
английский → изучаешь новое в первоисточниках → применяешь на практике → прокачиваешь навыки → больше зарплата

Тут важен именно последняя связка: больше навык → больше зп. Наверное, можно и без английского, но кажется это будет сложнее.
Объясните дилемму смещения-дисперсии (bias-variance tradeoff) и приведите примеры алгоритмов с высоким и низким смещением. (Тема: Алгоритмы)

Ответ

Смещение (bias) – это ошибка, внесенная в вашу модель из-за чрезмерного упрощения алгоритма машинного обучения, которое может привести к недообучению. В процессе обучения модели делаются упрощенные предположения, чтобы сделать целевую функцию более простой для понимания. Алгоритмы машинного обучения с низким смещением включают деревья решений, KNN и SVM. Высоким смещением, в частности, отличаются линейная и логистическая регрессия.

Дисперсия (variance) – это ошибка, внесенная в вашу модель сложным алгоритмом машинного обучения, при котором модель усваивает также и шум из тренировочного набора данных, что приводит к плохой точности на тестовом наборе данных. Это может привести к высокой чувствительности и переобучению.

Обычно, по мере усложения модели вы увидите снижение ошибки вследствие уменьшения смещения модели. Однако, это происходит только до определенной точки – и если вы будете усложнять свою модель дальше, в конце концов вы ее переобучите.

@machinelearning_interview
↪️ Что показывает P-значение о данных? (Тема: Статистика)

Ответ

P-значение используется для проверки значимости результатов после статистического теста гипотезы. P-значения помогают анализирующему делать выводы и всегда находятся в диапазоне между 0 и 1.

- P-значение, превышающее 0.05, обозначает недостаточные доказательства против нулевой гипотезы – а это значит, что нулевая гипотеза не может быть отвергнута.

- P-значение, меньшее 0.05, обозначает сильные доказательства против нулевой гипотезы – это значит, что нулевая гипотеза может быть отвергнута.

- P-значение, равное 0.05, находится на границе, то есть мы не можем сделать уверенного вывода о том, можно ли отвергнуть нулевую гипотезу.

@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Как бы вы справились с разными формами сезонности

Ответ

В реальных данных временных рядов (например, количества плюшевых мишек, закупаемых на фабрике игрушек) часто встречаются различные виды сезонности, которые могут пересекаться друг с другом. Годичная сезонность, вроде пика перед Рождеством и летнего спада, может сочетаться с месячной, недельной или даже дневной сезонностью. Это делает временной ряд нестационарным, поскольку среднее значение переменной различно для разных периодов времени.

Лучший способ удаления сезонности из данных – это дифференцирование временного ряда. Это процесс получения разности между датой x и x минус период сезонности, которым может быть год, месяц, или что-нибудь другое. При этом первый период сырых данных теряется, поскольку из них нечего вычитать.

@machinelearning_interview
DDL, DML, DCL, TCL, DQL
Forwarded from GitHub Community
typesenseопенсорсный аналог elasticsearch и подобных search-движков, с годным колличеством функционала

Другими словами это быстрая поисковая система с более продуманной системой поиска

Ссылка на проект

GitHub | #Interesting #Cpp