myStack
890 subscribers
761 photos
15 videos
27 files
310 links
Меня зовут Ростислав и я разработчик.

Это мой личный блог.

Я пишу на Go, читаю книги про технологии и пишу об этих и других вещах сюда.


Книги:
https://bit.ly/rostislav-books

Личка:
https://t.me/Rostislaved

Сайт:
Rostislav.me
Download Telegram
Сделал пару запросов в интернеты и собрал в табличку MAU (Monthly Active Users) различных популярных сервисов

| Name        | MAU   |
| ----------- | ----- |
| Spotify | 574 m |
| Apple Music | 100 m |
| Deezer | 12 m |
| Youtube | 2.5 b |
| Vimeo | 300 m |
| Netflix | 250 m |
| TikTok | 1.1 b |
| Twitter | 320 m |
| Tinder | 75 m |
| Whatsapp | 2 b |
| Telegram | 800 m |
| Facebook | 3 b |
| VK | 100 m |
| Instagram | 2.5 b |
| Uber | 131 m |



и отсортированная:
| Name        | MAU   |
| ----------- | ----- |
| Facebook | 3 b |
| Instagram | 2.5 b |
| Youtube | 2.5 b |
| Whatsapp | 2 b |
| TikTok | 1.1 b |
| Telegram | 800 m |
| Spotify | 574 m |
| Twitter | 320 m |
| Vimeo | 300 m |
| Netflix | 250 m |
| Uber | 131 m |
| Apple Music | 100 m |
| VK | 100 m |
| Tinder | 75 m |
| Deezer | 12 m |
Найден убийца pastebin'а. Сервис делает картинку - фотку монитора, где в IDE открыт ваш код.

https://code.xxut.ru/

ref
🤣15👍2
myStack
Сделал пару запросов в интернеты и собрал в табличку MAU (Monthly Active Users) различных популярных сервисов | Name | MAU | | ----------- | ----- | | Spotify | 574 m | | Apple Music | 100 m | | Deezer | 12 m | | Youtube | 2.5 b | |…
Немного обновил табличку. Добавил соотношение DAU/MAU.

DAU - число пользователей, которые заходят каждый день (среднее)
MAU - число пользователей, которые заходят хотя бы раз в месяц

| Name        | DAU    | MAU   | DAU/MAU |
| ----------- | ------ | ----- | ------- |
| Spotify | | 574 m | |
| Apple Music | | 100 m | |
| Deezer | | 16 m | |
| Youtube | 368 m | 2.7 b | 14% |
| Vimeo | | 300 m | |
| Netflix | 100 m | 250 m | 40% |
| Twitch | 30 m | 140 m | 21% |
| TikTok | 780 m | 1.7 b | 45% |
| Twitter | 240 m | 550 m | 40% |
| Tinder | | 75 m | |
| Whatsup | 400 m | 2.7 b | 15% |
| Telegram | 200 m | 800 m | 25% |
| Facebook | 2 b | 3 b | 66% |
| VK | 60 m | 100 m | 60% |
| Instagram | 1.25 b | 2.5 b | 50% |
| Uber | | 131 m | |

Вывод: DAU/MAU ~= 20% - 50%.
То есть в среднем примерно DAU = MAU/3

P.S. в ютуб как-то слабо верится. Но т.к. числа не очень достоверные, то возможна ошибка. Ну а может действительно так и есть
👍2🤯1
🍾12👍2🔥1🌭1
Что происходит, когда вводишь URL и нажимаешь Enter (высокий уровень)

Без CDN:
- Когда пользователь вводит URL в браузер, браузер делает запрос к DNS-серверу, чтобы получить IP-адрес сервера, связанного с этим URL.
- После того как браузер получил IP-адрес от DNS, он делает запрос к серверу. Этот сервер — nginx, который может либо отдать статический контент браузеру, либо перенаправить запрос на сервер бекенда для получения динамического контента.
- Статический контент — неизменяемые файлы (html, css, javascript) — фронтенд.
- Динамический контент — контент, генерируемый динамически на бекенде.
- Браузер, после получения статического контента, взаимодействует с ним. Этот статический контент может с помощью JavaScript-кода отправить запрос для получения дополнительной информации.
- Этот запрос также придет в nginx, а он перенаправит его на сервер бекенда. Сервер бекенда отдаст нужные данные nginx, а он отдаст их браузеру.

С CDN:
- Когда пользователь вводит URL в браузер, браузер делает запрос к DNS-серверу, чтобы получить IP-адрес сервера, связанного с этим URL.
- Если веб-сервис настроен на использование CDN, записи DNS будут указывать на серверы CDN, а не на оригинальный сервер (nginx).
- После того как браузер получил IP-адрес от DNS, он делает запрос к серверу CDN.
- CDN проверяет, есть ли запрошенные файлы (статические) в кэше. Если файлы есть в кэше, CDN возвращает их в браузер. Если файлы отсутствуют или кэш устарел, CDN делает запрос к оригинальному серверу (nginx) за свежими копиями файлов.
- Сервер (nginx) возвращает запрошенные файлы CDN, который в свою очередь кэширует их и отправляет браузеру.
- После загрузки статического контента, уже сам JavaScript-код на клиенте может делать запросы к серверу. Эти запросы могут быть направлены на CDN (если CDN настроен на кэширование динамического контента или API-ответов) или напрямую на сервер (nginx), в зависимости от конфигурации.
🔥71👍1
Чистая архитектура. Как изучать.

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

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

А книги вот такие. В порядке чтения.
1. Robert Martin - Clean Code
2. Robert Martin - Agile Software Development
3. Robert Martin - Clean Architecture

Пояснения:
1. Чистый код
Основа. Там не так много самой архитектуры, но базовые идеи есть, а также совсем немного про SOLID. Эта книга просто полезна сама по себе, а также может служить хорошим показателем будут ли следующие книги пониматься или нет. То есть, если чистый код понимаешь, то читай дальше.

2. Agile Software Development
Про эту мало кто знает, но она чуть ли не самая важная из всех трех. Именно тут описан SOLID.

3. Чистая архитектура
Тут сама идея чистой архитектуры. Многие начинают читать сразу ее и полагаю, что мало что понимают. Ну или понимают, но без предыдущей книги не так, как могли бы.

Достаточно ли этих трех книг? Если смог их понять полностью, то, наверное, да. Но понять их полностью непросто, если нет опыта и понимания ООП.

Также, кроме книг надо ознакомиться:
1. Со статьей про порты и адаптеры от Алистара Кокберна
2. Со статьей Мартина и его докладом.
(Статьи и доклад лучше посмотреть ПЕРЕД чтением книги по чистой архитектуре)

Если читать книги нет времени, то именно статьи и доклад - это необходимый минимум. Также советую этот курс.

Другие материалы в интернете
В интернете миллионы статей, видео и репозиториев на гитхабе, которые или содержат в названии словосочетание "чистая архитектура", или подразумевают, что именно о ней расказывают. Огромное количество этих материалов содержат ошибки и часто критические. Их сложно распознать, если сам изучал тему не по оригиналу, а по другим статьям, поэтому путь чтения книг скорее всего самый эффективный для достижения цели.
🔥9👍52👏1
Где искать электронные книги

http://flibusta.is
в основном художка (fb2, epub)

https://z-library.sk
Это для НЕ художественных книг (pdf, epub). 90% книг можно найти тут

https://libgen.bz
Аналог тому, что выше

https://www.twirpx.com
иногда тут бывает то, чего нет на либгене

https://annas-archive.org/
тут также может быть то, чего нет на либгене

Если предыдущие ссылки не помогли, то с вероятностью 0.99 книгу найти не получится, но еще источники можно поискать тут:
https://www.reddit.com/r/Piracy/wiki/megathread/books/

ну и не забываем про гугл
🔥11👍2🥴2
literally me
опа
🔥16🏆2🤯1
Отправил ссылку на премиум 11 летней сестре. У нее чет не получилось открыть и она случайно отправила подруге. У подруги получилось.
🤣19😁4🌚2
Сделал стикер, чтобы врываться в чатики
This media is not supported in your browser
VIEW IN TELEGRAM
😁7
Секунд 15 не мог понять, при чем тут кэш. (редис который, например). Реально в дурку пора
😁7👍6🤣5
| Язык         | Количество ключевых слов |
|--------------|--------------------------|
| C# | 86 |
| PHP | 75 |
| Haskell | 70 |
| JavaScript | 63 |
| C++ | 62 |
| Kotlin | 59 |
| Rust | 52 |
| Java | 50 |
| Scala | 50 |
| Swift | 48 |
| Erlang | 46 |
| Ruby | 42 |
| Groovy | 40 |
| TypeScript | 36 |
| Python | 35 |
| Objective-C | 32 |
| C | 32 |
| Perl | 31 |
| Go | 25 |
| Dart | 24 |
| Lua | 22 |


ChatGPT
👍8🤔3
#книги
Gregor Hohpe, Bobby Woolf - Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions
23.10.2023 - 22.11.2023

Давно заглядывался на эту книгу и считал, что именно в ней увижу то, что хотел, но увидел не всё.

Во-первых, книга довольно старая (2003 год это очень давно для индустрии). Поэтому хоть и язык примеров никуда не делся (java), то про всякие технологии сегодня уже мало кто слышал. Спасает то, что паттерны описаны без привязки к этим технологиям, как и должно быть в книге по паттернам. Однако, мир довольно-таки сильно поменялся и теперь у нас не популярны "программы, которые мы покупаем и встраиваем", поэтому некоторые паттерны могут быть не так актуальны.
Во-вторых, книга все же про энтерпрайз системы, где легаси как раз может быть, а не про модные микросервисы.

Тем не менее написана довольно неплохо, на амазоне у нее вообще 4.7 (что почти теоретический максимум). Как и любую книгу по паттернам можно использовать, как справочник. Только я слабо представляю, как такие книги можно использовать, как справочник, не прочитав сначала полностью. Но вот я прочитал и теперь есть какая-то структура в голове. Заодно узнал, что существует более современная книга от другого знаменитого автора: Vaughn Vernon - Reactive Messaging Patterns with the Actor Model. (Главы в ней почти идентичны, хоть и про модель акторов. Но т.к. рейтинг 4.3 и автор вроде скучный читать я ее не буду. Но как справочник - норм.)

Хоть и читать было скучновато, но я рад, что сделал это ибо классика. Ну и обсидиан наполнил конспектом и дополнениями к некоторым, уже существующим, заметкам.
👍2🔥1
Если у кого-то есть 12 тысяч (вместо 14.5), то можете купить себе премиум на литкоде до 27го ноября
👍1
Последствия неверного деления на микросервисы

Дано: сервис, который отправляет запросы в сторонний API. Для каждого запроса нужен токен в хедере, чтобы пройти авторизацию. Токен можно получить отправив запрос с логином и паролем. Токен живет сутки. При получении сервисом токена он кэшировался на сутки. Всего можно получить 5 токенов. При получении 6го протухает первый и т.д.

Появилась проблема. Токен вдруг стал протухать за 30 минут. После долгих попыток найти проблему в сервисе выяснилось, что существовал второй сервис, который использовал те же логин и пароль для получения токена и в этом сервисе поменяли время кэширования токена на 5 минут. Как итог этот второй сервис за 30 минут получал 5 новых токенов, а при получении 6го инвалидировал токен в первом сервисе, а этот первый сервис еще пол часа думал, что токен валидный.
😢2👍1
#книги
Thomas Sowell - Basic Economics
31.07.2023 - 27.11.2023
не дочитал (прочитал 18 глав из 27)

Книга отличная, но читать не закончил по ряду причин:
1. Читал перед сном и не очень все понимал из-за этого
2. Перестал видеть актуальность т.к. не предвиделось применение этих знаний на практике
3. Хотел начать читать другое

Однако книга хорошая. Она показывает закономерности в экономике на интуитивных примерах.

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

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

Девизом этой книги можно назвать фразу: "allocation of scarce resources which have alternative uses". Она там очень часто встречается. По сути она про то, что цены позволяют распределить конечные ресурсы максимально эффективно, а без цен эффективность этого распределения не максимальна и это влияет на благосостояние нации в целом.
🎉31