TGViewer
Channel Public Channel
Илья Зыкин. Pro Жизнь

Илья Зыкин. Pro Жизнь

@prostocoding

IT коуч, GitHub.com/the-teacher
Subscribers
137
Photos
1.1K
Videos
45
Links
95

Showing posts older than #351 · Back to latest

Older Posts 9 shown
Post #342 65
День в Стамбуле.

Съездили с семьей в космический центр, ходили на смотровую площадку, катались на корабликах, ели, пили, радовались и уставали. Вечером вышел на прогулку попал на фестиваль джаза.
  • 🔥 4
  • 👍 1
Post #341 67
Технологический коучинг

Пару недель назад познакомился я с коллегой из Мюнхена. Дядьке за 50. В ИТ последние лет 30. Он и кодит, и занимается аджайл коучингом, и тех консультированием. И продактом был. Опыта в ИТ по разным направлениям тонна.

Вообще чувак очень крутой. Странно, что он не написал книгу по своему опыту.

Поговорили. Друг другу понравились. Он мне предложил помочь ему с консалтингом одной крупной технологической компании. Компания лидер в США и по всему миру в своем секторе. Из списка Fortune 500, если вам что-то это говорит.

2 недели по вечерам я неспешно разбирался с их проектом и нам удалось сформировать план по новому этапу цифровой трансформации компании на ближайший квартал.

Я прорабатывал улучшение developer experience и onboarding.

Ставка за консалтинг в 3 раза выше чем у разработчика. Работа интересная на стыке кучи сфер. Все как я люблю.

Нырнуть бы в это по самую макушку. Только где бы найти постоянный поток клиентов ☺️
  • 👍 2
Post #340 60
Мое тотемное животное
Post #336 80
Стамбульский вайб. 2024.

Пацана отвели в школу. Теперь в кофейню. Доброе утро.
  • 🔥 1
Post #335 67
Докеризация крупного проекта (2)

Общий ход решения задачи.

1. Нарисовать все отдельные проекты на листке и раздать им фиксированные IP адреса. Для наглядности.

2. Поместить в единую сеть. Найти как в докере задать сеть с такими параметрами.

3. Настроить приложения, чтобы они умели обрабатывать запросы, которые идут к ним через именованные адреса (типа vasya1.dev)

4. Настроить в docker compose там где надо extra_hosts. Прописать там нужные именованные адреса и связать их с нужными приложениями внутри сети.

5. Да, блин. Придется прописать руками нужные адреса в хозяйском /etc/hosts. Эту хрень кажется не автоматизируешь.

Что получится.

App 1 дает запрос на App 2 в браузере. Резолвится все через хозяйский /etc/hosts. App 2 дает ответ App 1 и App 1 уже подает закрытый запрос на App 2.

Тут уже работает сетевой уровень в докере, хотя все участники те же. Тут уже сработают /etc/hosts контейнеров, которые мы настроили через extra_hosts.

Ну и там оно начнет само плясать. План надежный. Как швейцарские часы.
  • 👍 2
Post #334 57
Докеризация крупного проекта

Есть проект из нескольких частей. Связаны они единой точкой логина; Все части живут в отдельных мирах и запускаются через отдельные докер компоуз файлы.

На рабочих машинах еще никому не удавалось запустить это все и сразу. Разработчики часть проекта запускают локально со связью с dev серверами. Иногда части запускают по отдельности.

Чувствительная точка — это приложение единого логина.

Первый запрос к приложению ты подаешь открыто, через браузер. А после этого идет закрытый запрос через TCP/IP без участия браузера.

Чтобы это все работало совместно, нужно запустить все это в единой сети, связать доменными именами, настроить приложения так, чтобы они знали куда ходить.

Я нашел вариант близкий к хорошему.

Запускать все проекты в единой сети. И использовать настройку extra_hosts. Как оказалось она умеет автоматически расширять /etc/hosts внутри контейнеров. Я не проверял еще, но кажется к контейнерам можно будет обращаться по именованным адресам, а не по IP; В голове сложилось
  • 👍 1
Post #333 59
Что то на фруктово-витаминном
  • 👍 4
Post #332 57
Докер на Apple ARM

По моим ощущениям эту проблему не решило 90% разработчиков в мире, кто с ней сталкивался.

Докер собирает под каждую систему (архитектуру) свой образ. Например i386 и arm64 или amd64. Это влияет на скорость работы итоговой сборки.

Иногда случается фигня. Все собрано под arm64, а находится какая-то нужная и важная утилита, которая рассчитана только на i386. И все. Трындец.

При попытке запустить эту утилиту она падает, с жалобой, что нужно найти динамический линковщик под другую архитектуру, а его конечно нет. Или другие файлы;

В Debian можно сделать так dpkg --add-architecture i386 && apt-get update Это подскажет операционке источники программ для нужной архитектуры.

Потом apt-file search FILE_NAME поможет найти нужный файл в библиотеках. Их можно будет поставить с постфиксом :i386

Если разложить нужные файлы по нужным местам — в итоге нужная утилита заработает.

Да чтоб тебя! 2024 год. А все какая-то дичь в этом мире программирования.
  • 👍 1
Post #331 55
Докер

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

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

Приходилось либо ситуативно лечить и смиряться, что теперь система черт знает в каком состоянии, либо начинать все заново. И тратить тонну времени.

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

Эти сохраненные шаги называют слоями. Чтобы не дать себя запутать можно называть это точками сохранения. Как в компьютерных играх.

Докер — мастхэв любого разработчика. Сперва докер — только потом любой язык программирования какой вам надо. Так вижу.

Что думаете?
  • 👍 5
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →