Forwarded from Алексей Шевцов
Кстати, надо учитывать, что топовые IT компании своим топовым сотрудникам еще дают акции. Я знаю человека из "биг тек" у которого акции дают существенный бонус к окладу, но это только для важных сотрудников, чтобы их мотивировать работать и держать.
Не бедствуют топовые прогеры в США, короче.
Не бедствуют топовые прогеры в США, короче.
👍2
Настраиваю маме принтер через удаленный рабочий стол.
Наконец-то получается, на скане какой-то документ. Думаю: о, отлично, осталось формат нужный сделать, расширение и по мелочи. Нажимаю сканировать - белый экран. Пробую предыдущую команду - опять белый экран. Ничего не понимаю. Еще минут 10 пробую разное, пока не начинаю подозревать. Звоню. -Ты документ из сканера доставала? -Да.
...
Наконец-то получается, на скане какой-то документ. Думаю: о, отлично, осталось формат нужный сделать, расширение и по мелочи. Нажимаю сканировать - белый экран. Пробую предыдущую команду - опять белый экран. Ничего не понимаю. Еще минут 10 пробую разное, пока не начинаю подозревать. Звоню. -Ты документ из сканера доставала? -Да.
...
😁6
HTTP Версии
HTTP/1 - каждый запрос - это отдельное TCP соединение
HTTP/1.1 - Добавили Keep Alive. Несколько запросов могут проходить в одном TCP соединении.
HTTP/2
1. Бинарный протокол
2. Сжатие заголовков
3. Добавили HTTP Streams - позволяют внутри одного TCP соединения делать параллельные запросы, порядок неважен.
4. Добавили возможность Push'ей для сервера.
HTTP/3
1. Использует не TCP, а QUIC. QUIC основан на UDP.
HTTP/1 - каждый запрос - это отдельное TCP соединение
HTTP/1.1 - Добавили Keep Alive. Несколько запросов могут проходить в одном TCP соединении.
HTTP/2
1. Бинарный протокол
2. Сжатие заголовков
3. Добавили HTTP Streams - позволяют внутри одного TCP соединения делать параллельные запросы, порядок неважен.
4. Добавили возможность Push'ей для сервера.
HTTP/3
1. Использует не TCP, а QUIC. QUIC основан на UDP.
🔥6🐳2🍌2🌭1
Если кого интересует какую структуру проекта можно себе взять на вооружение для Go приложений, то вот она.
Не называю ее завершенной или идеальной, но как минимум лучше 90% того, что вижу в интернетах
Не называю ее завершенной или идеальной, но как минимум лучше 90% того, что вижу в интернетах
.
├── CHANGELOG.md
├── config.toml
├── deploy
├── go.mod
├── go.sum
├── internal
│ ├── app
│ │ ├── adapters
│ │ │ ├── primary
│ │ │ │ ├── grpc-adapter
│ │ │ │ ├── http-adapter
│ │ │ │ ├── kafka-adapter-subscriber
│ │ │ │ ├── nats-adapter-subscriber
│ │ │ └── secondary
│ │ │ ├── grpc-adapter
│ │ │ ├── kafka-adapter-publisher
│ │ │ ├── nats-adapter-publisher
│ │ │ ├── gateways
│ │ │ └── repositories
│ │ ├── application
│ │ │ └── service
│ │ ├── domain
│ │ │ └── order
│ │ │ └── order.go
│ │ └── config
│ └── pkg
│ ├── logger
│ ├── prometheus
│ └── tech
├── main.go
└── README.md
👍6❤3👎1🌭1
Чтобы написать в чат в WhatsApp не добавляя номер в контакты можно сделать так:
wa.me/79167772424👍1👏1
Любители директории pkg оправдывайтесь:
https://go.dev/doc/modules/layout
https://go.dev/doc/modules/layout
go.dev
Organizing a Go module - The Go Programming Language
🤔2😁1
Decoupling is an essential tool to enable the management of change
- Gregor Hohpe, Bobby Woolf - Enterprise Integration Patterns
- Gregor Hohpe, Bobby Woolf - Enterprise Integration Patterns
❤2🤩1
Я зачем-то поднял демоны Prometheus + NodeExporter + Grafana на ноуте, чтобы смотреть за температурой ЦПУ несколько дней, перед тем, как почищу его и заменю термопасту 🏥
(По центру - это я фильм в 4к запустил)
(По центру - это я фильм в 4к запустил)
Please open Telegram to view this post
VIEW IN TELEGRAM
👏6🔥1
Передача файлов между разными компьютерами
Нашел крутую штуку - croc
https://github.com/schollz/croc
Супер простая и удобная в использовании. Там откуда передаем файл делаем:
И там где принимаем:
Скорость - максимальная
Нашел крутую штуку - croc
https://github.com/schollz/croc
Супер простая и удобная в использовании. Там откуда передаем файл делаем:
> croc video.mp4
Did you mean to send 'video.mp4'? (Y/n)
Sending 'video.mp4' (1.4 GB)
Code is: 8448-xray-valid-slow
On the other computer run
croc 8448-xray-valid-slow
И там где принимаем:
croc 8448-xray-valid-slow
Скорость - максимальная
👍4
Платное ПО
Если читать старые (2003 год - старая, даже 2011 - старая) книги по разработке ПО, то можно видеть, как поменялась индустрия по отношению к софту. Раньше было нормой покупать приложения или его части, а сейчас везде опен-сорс
Если читать старые (2003 год - старая, даже 2011 - старая) книги по разработке ПО, то можно видеть, как поменялась индустрия по отношению к софту. Раньше было нормой покупать приложения или его части, а сейчас везде опен-сорс
👏4🤡1
Внутренности типов в Go. Либа
https://github.com/rostislaved/go-types-internals
В Go типы данных имеют свое представление в рантайме в виде структур. Например, слайс - это структура, мапа - структура. Чтобы иметь доступ к полям этих структур нужно использовать пакет unsafe. Я когда копался во внутренностях мапы написал код, который это упрощает. Не то чтобы это получилась полноценная либа, но я решил выложить, чтобы не потерялось. Удобно, если надо посмотреть, что внутри.
https://github.com/rostislaved/go-types-internals
В Go типы данных имеют свое представление в рантайме в виде структур. Например, слайс - это структура, мапа - структура. Чтобы иметь доступ к полям этих структур нужно использовать пакет unsafe. Я когда копался во внутренностях мапы написал код, который это упрощает. Не то чтобы это получилась полноценная либа, но я решил выложить, чтобы не потерялось. Удобно, если надо посмотреть, что внутри.
👍4🤔1